<?xml version="1.0" encoding="UTF-8" ?>
<ui:composition xmlns="http://www.w3.org/1999/xhtml"
	xmlns:ui="http://java.sun.com/jsf/facelets"
	xmlns:h="http://java.sun.com/jsf/html"
	xmlns:f="http://java.sun.com/jsf/core"
	xmlns:p="http://primefaces.org/ui"
	xmlns:c="http://java.sun.com/jsf/composite/components"
	template="/WEB-INF/templates/template.xhtml">
	<ui:define name="title">
		<h3><h:outputLabel	value="#{i18n['erp.bien.bajas.pagina.titulo']}" /></h3>
	</ui:define>
	<ui:define name="content">
		<h:form id="formBien">
			<p:growl id="pnlMessages" autoUpdate="true" closable="true"/>
			<p:toolbar id="toolbar">
				<p:toolbarGroup align="left">
					<p:commandButton id="btnRefrescar" value="#{i18n['label.refrescar']}" icon="ui-icon-arrowrefresh-1-w" 
						actionListener="#{bajasBienController.refrescarFormulario}" process="@this,pnlBuscarBien"
						update="pnlMessages,tablaBienes,pnlBuscarBien,toolbar"/>
					<p:commandButton id="btnExcel" value="#{i18n['label.exportar.excel']}" ajax="false"
						icon="exportExcel" disabled="#{empty bajasBienDataManager.listVistaBien}">
						<p:dataExporter type="xls" target="tablaBienes" fileName="productos" postProcessor="#{bajasBienController.postProcessXLS}"/>
					</p:commandButton>
				</p:toolbarGroup>
			</p:toolbar>
			<p:panel id="pnlBuscarBien" header="#{i18n['erp.bien.buscar']}">
				<table class = "formulario">
					<tr>
						<td width="15%"><h:outputLabel for="txtNombreCustodio" value="#{i18n['label.custodio']}" /></td>
						<td width="85%">
							<h:panelGrid columns="2" border="0">
								<h:outputText id="txtNombreCustodio" value="#{bajasBienController.buscarUsuarioComponent.vistaEmpleadoSeleccionado.nombresCompletos}" />
								<c:buscarUsuarioComponent
									controller="#{bajasBienController.buscarUsuarioComponent}"
									render=":formBien:txtNombreCustodio" onComplete="#{bajasBienController.onCompleteBuscarUsuarioComponent()}"/>
							</h:panelGrid>
						</td>
					</tr>
					<tr>
						<td><h:outputLabel for="txtCodigoBien" value="#{i18n['label.codigo']}" /></td>
						<td>
							<p:inputText id="txtCodigoBien" value="#{bajasBienDataManager.vistaBienBuscar.bieCodigo}" />
						</td>
					</tr>
					<tr>
						<td>
							<h:outputLabel for="selectTipoIngresoBien" value="#{i18n['erp.bien.tipo.transaccion']}" />
						</td>
						<td>
							<p:selectOneMenu id="selectTipoIngresoBien"
								style="width: 50%" label="#{i18n['erp.bien.categoria']}"
								value="#{bajasBienDataManager.idDcTipoBienSelec}">
								<f:selectItem itemValue="#{bajasBienDataManager.estadoInvalido}" itemLabel="#{i18n['label.seleccione']}"/>
								<f:selectItems value="#{bajasBienDataManager.dcTipoBien}"/>
							</p:selectOneMenu>
						</td>
					</tr>
					<tr>
						<td>
							<h:outputLabel for="selectCategoria" value="#{i18n['erp.bien.categoria']}" />
						</td>
						<td>
							<p:selectOneMenu id="selectCategoria"
								style="width: 50%" label="#{i18n['erp.bien.categoria']}"
								value="#{bajasBienDataManager.idCategoriaBienSeleccionado}">
								<f:selectItem itemValue="-1" itemLabel="#{i18n['label.seleccione']}"/>
								<f:selectItems value="#{bajasBienDataManager.dcCategoriaBien}"/>
								<p:ajax event="change" process="@this" update="txtLinea" listener="#{bajasBienDataManager.cargarDcLineaBien}"/>
							</p:selectOneMenu>
						</td>
					</tr>
					<tr>
						<td>
							<h:outputLabel for="txtLinea" value="#{i18n['erp.bien.linea']}" />
						</td>
						<td>
							<p:selectOneMenu id="txtLinea"
								style="width: 50%" label="#{i18n['erp.bien.linea']}"
								value="#{bajasBienDataManager.idLineaBienSeleccionado}">
								<f:selectItem itemValue="-1" itemLabel="#{i18n['label.seleccione']}"/>
								<f:selectItems value="#{bajasBienDataManager.dcLineaBien}"/>
							</p:selectOneMenu>
						</td>
					</tr>
				</table>
			</p:panel>
			<p:panel id="botonesBuscar">
				<p:commandButton id="btnBuscar"
					actionListener="#{bajasBienController.buscarVistaBien}"
					value="#{i18n['label.buscar']}" 
					process="@this,pnlBuscarBien"
					update="pnlMessages,tablaBienes,pnlBuscarBien,toolbar" />
				<p:commandButton id="btnLimpiar"
					actionListener="#{bajasBienController.limpiarFiltrosBusqueda}"
					value="#{i18n['label.limpiar']}" 
					process="@this,pnlBuscarBien" 
					update="pnlMessages,tablaBienes,pnlBuscarBien,toolbar" />
			</p:panel>
			<p:dataTable id="tablaBienes"
				value="#{bajasBienDataManager.listVistaBien}"
				var="vistaBien" rowIndexVar="rowIndex"
				paginator="true" rows="5" paginatorPosition="bottom"
				paginatorTemplate="{CurrentPageReport}  {FirstPageLink} {PreviousPageLink} {PageLinks} {NextPageLink} {LastPageLink} {RowsPerPageDropdown}"
				rowsPerPageTemplate="5,10,15">
				<f:facet name="header">
					<h:outputText value="#{i18n['erp.bien.lista']}" />
				</f:facet>
				<p:column styleClass="centered" width="5%">
					<f:facet name="header">
						<h:outputText value="#" />
					</f:facet>
					<h:outputText value="#{rowIndex+1}"/>
				</p:column>
				<p:column width="10%" styleClass="centered">
					<f:facet name="header">
						<h:outputText value="#{i18n['erp.bien.codigo']}" />
					</f:facet>
					<h:outputText value="#{vistaBien.bieCodigo == null ? 'N/D':vistaBien.bieCodigo}" />
				</p:column>
				<p:column width="10%">
					<f:facet name="header">
						<h:outputText value="#{i18n['erp.bien.categoria']}" />
					</f:facet>
					<h:outputText value="#{vistaBien.catBienNombre}" />
				</p:column>
				<p:column width="10%">
					<f:facet name="header">
						<h:outputText value="#{i18n['erp.bien.linea']}" />
					</f:facet>
					<h:outputText value="#{vistaBien.linBienNombre}" />
				</p:column>
				<p:column width="10%">
					<f:facet name="header">
						<h:outputText value="#{i18n['erp.bien.nombre']}" />
					</f:facet>
					<h:outputText value="#{vistaBien.bieNombre}" />
				</p:column>
				<p:column width="10%">
					<f:facet name="header">
						<h:outputText value="#{i18n['label.custodio']}" />
					</f:facet>
					<h:outputText value="#{vistaBien.nombresCompletos == null ? i18n['label.bodega']:vistaBien.nombresCompletos}" />
				</p:column>
				<p:column width="10%">
					<f:facet name="header">
						<h:outputText value="#{i18n['label.estado']}" />
					</f:facet>
					<h:outputText value="#{vistaBien.bieEstadoUso eq bajasBienDataManager.estadoActivo ? i18n['label.en.uso']:i18n['label.sin.uso']}" />
				</p:column>
				<p:column headerText="#{i18n['label.opciones']}" styleClass="centered" width="20%" exportable="false">
					<h:panelGroup>
						<p:commandLink value="  Dar baja" title="Dar baja" rendered="#{vistaBien.npVerBajaBien}"
							oncomplete="dlgBajaBien.show()" update=":formBajaBien:pnlBajaBien">
							<f:setPropertyActionListener target="#{bajasBienDataManager.vistaBienEditar}" value="#{vistaBien}"/>
						</p:commandLink> 
					</h:panelGroup>
				</p:column>
			</p:dataTable>
			
			<!-- Confirmar baja bien -->
			<p:confirmDialog id="dialogConfirmarBaja" message="#{i18n['erp.bien.bajas.pregunta.confirmacion']}" appendTo="@(body)"
				header="#{i18n['erp.bien.bajas.header.pregunta.confirmacion']}" severity="alert" widgetVar="dlgConfirmaBaja" >
				<p:commandButton id="btnGuardar" value="#{i18n['label.guardar']}"
					actionListener="#{bajasBienController.darBajaBien}"
					oncomplete="if (args &amp;&amp; !args.validationFailed) dlgConfirmaBaja.hide(); dlgBajaBien.hide();"
					process="@this,:formBajaBien" update=":formBajaBien:pnlBajaBien,:formBien:tablaBienes,:formBien:pnlMessages"/>
				<p:commandButton value="#{i18n['label.cancelar']}" onclick="dlgConfirmaBaja.hide(); dlgBajaBien.hide();" type="button" />
			</p:confirmDialog>
			
		</h:form>
		
		<ui:include src="dialogBajaBien.xhtml" />
		
	</ui:define>
</ui:composition>